package net.hn.hnms.biz.plan.service;

import net.hn.hnms.biz.plan.request.PlanSaleReq;
import net.hn.hnms.biz.plan.vo.PlanSaleVO;
import net.hn.hnms.sys.common.core.domain.ResponsePage;
import net.hn.hnms.sys.common.mybatis.core.page.PageQuery;

import java.util.List;

/**
 * @author ly
 * 销售计划服务层
 * @date 2022-09-22
 */
public interface IPlanSaleService {


    /**
     *
     * @param planSale
     * @param pageQuery
     * 分页查询销售计划列表
     */
    ResponsePage<PlanSaleVO> selectPageList(PlanSaleReq planSale, PageQuery pageQuery);


    /**
     *
     * @param planSale
     * 查询销售计划列表
     */
    List<PlanSaleVO> selectList(PlanSaleReq planSale);

    /**
     *
     * @param planSale
     * 新增销售计划
     */
    int insert(PlanSaleReq planSale);

    /**
     *
     * @param idList
     * 批量删除
     */
    void deleteBatch(List<String> idList);


    /**
     *
     * @param planSale
     * 单个更新 根据id主键 更新销售计划详情
     */
    void updateById(PlanSaleReq planSale);


    /**
     *
     * @param id
     * 通过主键id 查询详情
     */
    PlanSaleVO selectDetailById(String id);

    /**
     * 启用/禁用
     * @param id 数据id
     * @param status  status: 0:启用 1:禁用
     */
    void changeStatus(String id, Integer status);
}